package com.yangwudongxi.sqlloghelper.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;
import java.util.Map;

/**
 * 查询结果
 *
 * @author 氧屋东西
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class QueryResult {
    
    /**
     * 列信息
     */
    private List<ColumnInfo> columns;
    
    /**
     * 数据行
     */
    private List<Map<String, Object>> rows;
    
    /**
     * 总记录数
     */
    private Integer total;
    
    /**
     * 是否有更多数据（超过100条）
     */
    private Boolean hasMore;
    
    /**
     * 列信息
     */
    @Data
    @Builder
    @NoArgsConstructor
    @AllArgsConstructor
    public static class ColumnInfo {
        /**
         * 列名
         */
        private String name;
        
        /**
         * 列注释
         */
        private String comment;
        
        /**
         * 数据类型
         */
        private String dataType;
    }
}